package com.ctsi.system.enums;

import com.ctsi.core.common.annotation.ExceptionEnum;
import com.ctsi.core.common.constant.MarsExceptionConstant;
import com.ctsi.core.common.enums.BaseExceptionEnum;
import lombok.AllArgsConstructor;
import lombok.Getter;


/**
 * @version 1.0
 * @author: wang xiao xiang
 * @date: 2021/8/9 16:40
 */
@Getter
@AllArgsConstructor
@ExceptionEnum(module = MarsExceptionConstant.MARS_SYSTEM_MODULE, kind = MarsExceptionConstant.MARS_SYSTEM_ENUM)
public enum SystemExceptionEnum implements BaseExceptionEnum {

    /**
     * 系统业务相关的枚举对象
     */
    DICT_READ_ONLY(1, "字典为只读，不可删除"),
    DICT_VALUE_NOT_NULL(2, "字典项不为空，先删除字典项"),
    SUB_MENU_NOT_DELETE(3, "包含子菜单，不能删除"),
    ROLE_NOT_EXIST(4, "角色数据不存在"),
    NO_PERMISSION_OPERATE(3, "没有权限操作该数据，请联系管理员"),
    DEFINE_ORG_NOT_EXIST(4, "自定义数据权限类型时，组织不能为空"),
    EMP_INFO_EMPTY(5, "员工信息为空"),
    DATA_SCOPE_TYPE_ENUM_IS_EMPTY(6, "数据范围枚举对象为空");

    private final Integer code;

    private final String message;
}
